/*
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements.  See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership.  The ASF licenses this file
 * to you under the Apache License, Version 2.0 (the
 * "License"); you may not use this file except in compliance
 * with the License.  You may obtain a copy of the License at
 *
 *   https://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing,
 * software distributed under the License is distributed on an
 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 * KIND, either express or implied.  See the License for the
 * specific language governing permissions and limitations
 * under the License.
 */
package org.apache.plc4x.java.opcua.readwrite;

import java.util.HashMap;
import java.util.Map;

// Code generated by code-generation. DO NOT EDIT.

public enum OpcuaNodeIdServicesVariableProgram {
  ProgramTransitionEventType_IntermediateResult((int) 2379L),
  ProgramDiagnosticType_CreateSessionId((int) 2381L),
  ProgramDiagnosticType_CreateClientName((int) 2382L),
  ProgramDiagnosticType_InvocationCreationTime((int) 2383L),
  ProgramDiagnosticType_LastTransitionTime((int) 2384L),
  ProgramDiagnosticType_LastMethodCall((int) 2385L),
  ProgramDiagnosticType_LastMethodSessionId((int) 2386L),
  ProgramDiagnosticType_LastMethodInputArguments((int) 2387L),
  ProgramDiagnosticType_LastMethodOutputArguments((int) 2388L),
  ProgramDiagnosticType_LastMethodCallTime((int) 2389L),
  ProgramDiagnosticType_LastMethodReturnStatus((int) 2390L),
  ProgramStateMachineType_Creatable((int) 2392L),
  ProgramStateMachineType_Deletable((int) 2393L),
  ProgramStateMachineType_AutoDelete((int) 2394L),
  ProgramStateMachineType_RecycleCount((int) 2395L),
  ProgramStateMachineType_InstanceCount((int) 2396L),
  ProgramStateMachineType_MaxInstanceCount((int) 2397L),
  ProgramStateMachineType_MaxRecycleCount((int) 2398L),
  ProgramStateMachineType_ProgramDiagnostic((int) 2399L),
  ProgramStateMachineType_Ready_StateNumber((int) 2401L),
  ProgramStateMachineType_Running_StateNumber((int) 2403L),
  ProgramStateMachineType_Suspended_StateNumber((int) 2405L),
  ProgramStateMachineType_Halted_StateNumber((int) 2407L),
  ProgramStateMachineType_HaltedToReady_TransitionNumber((int) 2409L),
  ProgramStateMachineType_ReadyToRunning_TransitionNumber((int) 2411L),
  ProgramStateMachineType_RunningToHalted_TransitionNumber((int) 2413L),
  ProgramStateMachineType_RunningToReady_TransitionNumber((int) 2415L),
  ProgramStateMachineType_RunningToSuspended_TransitionNumber((int) 2417L),
  ProgramStateMachineType_SuspendedToRunning_TransitionNumber((int) 2419L),
  ProgramStateMachineType_SuspendedToHalted_TransitionNumber((int) 2421L),
  ProgramStateMachineType_SuspendedToReady_TransitionNumber((int) 2423L),
  ProgramStateMachineType_ReadyToHalted_TransitionNumber((int) 2425L),
  ProgramTransitionAuditEventType_Transition((int) 3825L),
  ProgramTransitionAuditEventType_Transition_Id((int) 3826L),
  ProgramTransitionAuditEventType_Transition_Name((int) 3827L),
  ProgramTransitionAuditEventType_Transition_Number((int) 3828L),
  ProgramTransitionAuditEventType_Transition_TransitionTime((int) 3829L),
  ProgramStateMachineType_CurrentState((int) 3830L),
  ProgramStateMachineType_CurrentState_Id((int) 3831L),
  ProgramStateMachineType_CurrentState_Name((int) 3832L),
  ProgramStateMachineType_CurrentState_Number((int) 3833L),
  ProgramStateMachineType_CurrentState_EffectiveDisplayName((int) 3834L),
  ProgramStateMachineType_LastTransition((int) 3835L),
  ProgramStateMachineType_LastTransition_Id((int) 3836L),
  ProgramStateMachineType_LastTransition_Name((int) 3837L),
  ProgramStateMachineType_LastTransition_Number((int) 3838L),
  ProgramStateMachineType_LastTransition_TransitionTime((int) 3839L),
  ProgramStateMachineType_ProgramDiagnostic_CreateSessionId((int) 3840L),
  ProgramStateMachineType_ProgramDiagnostic_CreateClientName((int) 3841L),
  ProgramStateMachineType_ProgramDiagnostic_InvocationCreationTime((int) 3842L),
  ProgramStateMachineType_ProgramDiagnostic_LastTransitionTime((int) 3843L),
  ProgramStateMachineType_ProgramDiagnostic_LastMethodCall((int) 3844L),
  ProgramStateMachineType_ProgramDiagnostic_LastMethodSessionId((int) 3845L),
  ProgramStateMachineType_ProgramDiagnostic_LastMethodInputArguments((int) 3846L),
  ProgramStateMachineType_ProgramDiagnostic_LastMethodOutputArguments((int) 3847L),
  ProgramStateMachineType_ProgramDiagnostic_LastMethodCallTime((int) 3848L),
  ProgramStateMachineType_ProgramDiagnostic_LastMethodReturnStatus((int) 3849L),
  ProgramTransitionAuditEventType_Transition_EffectiveTransitionTime((int) 11463L),
  ProgramStateMachineType_LastTransition_EffectiveTransitionTime((int) 11464L),
  ProgramStateMachineType_ProgramDiagnostic_LastMethodInputValues((int) 15038L),
  ProgramStateMachineType_ProgramDiagnostic_LastMethodOutputValues((int) 15040L),
  ProgramDiagnostic2Type_CreateSessionId((int) 15384L),
  ProgramDiagnostic2Type_CreateClientName((int) 15385L),
  ProgramDiagnostic2Type_InvocationCreationTime((int) 15386L),
  ProgramDiagnostic2Type_LastTransitionTime((int) 15387L),
  ProgramDiagnostic2Type_LastMethodCall((int) 15388L),
  ProgramDiagnostic2Type_LastMethodSessionId((int) 15389L),
  ProgramDiagnostic2Type_LastMethodInputArguments((int) 15390L),
  ProgramDiagnostic2Type_LastMethodOutputArguments((int) 15391L),
  ProgramDiagnostic2Type_LastMethodInputValues((int) 15392L),
  ProgramDiagnostic2Type_LastMethodOutputValues((int) 15393L),
  ProgramDiagnostic2Type_LastMethodCallTime((int) 15394L),
  ProgramDiagnostic2Type_LastMethodReturnStatus((int) 15395L);
  private static final Map<Integer, OpcuaNodeIdServicesVariableProgram> map;

  static {
    map = new HashMap<>();
    for (OpcuaNodeIdServicesVariableProgram value : OpcuaNodeIdServicesVariableProgram.values()) {
      map.put((int) value.getValue(), value);
    }
  }

  private final int value;

  OpcuaNodeIdServicesVariableProgram(int value) {
    this.value = value;
  }

  public int getValue() {
    return value;
  }

  public static OpcuaNodeIdServicesVariableProgram enumForValue(int value) {
    return map.get(value);
  }

  public static Boolean isDefined(int value) {
    return map.containsKey(value);
  }
}
